Quick Sort Algoritması

Bir sıralama algoritmasının çalışmasını adım adım görelim

Sıralama Simülasyonu

Durum: Henüz sıralama başlatılmadı.

İşlem Sayısı: 0

Geçen Süre: 0.00 ms

Quick Sort Nasıl Çalışır?

Quick Sort, "böl ve yönet" (divide and conquer) stratejisini kullanan verimli bir sıralama algoritmasıdır. Temel adımları:

  1. Pivot seçimi: Diziden bir "pivot" eleman seçilir (genellikle son eleman).
  2. Bölme (Partitioning): Diğer elemanlar pivottan küçük olanlar solda, büyük olanlar sağda olacak şekilde iki gruba ayrılır.
  3. Pivot yerleştirme: Pivot, bu iki grup arasına yerleştirilir.
  4. Rekürsif çağrı: Aynı işlem, pivotun solundaki ve sağındaki alt dizilere uygulanır.

Bu algoritma, özellikle büyük veri kümeleri için çok verimlidir ve pratikte en hızlı sıralama algoritmalarından biridir.

En İyi Durum: O(n log n)
Ortalama Durum: O(n log n)
En Kötü Durum: O(n²)
Uzay Karmaşıklığı: O(log n)

Kararlılık ve Uygulama Alanları

Kararlılık (Stability): Quick Sort algoritması kararsız bir algoritmadır. Yani aynı değere sahip elemanların sıralamadaki göreceli konumları değişebilir.

Kararlılık ne demek? Bir sıralama algoritmasının, aynı değere sahip elemanların sıralamadaki orijinal göreli konumlarını koruması özelliğidir. Örneğin, aynı not değerine sahip iki öğrenci sıralaması yaparken, isim alfabesine göre sıralanmış öğrencilerin, not sıralaması sonrası da aynı isim sırasında kalmalarını istiyorsak kararlı bir algoritma seçmeliyiz.

Kullanım Alanları:

  • Çok büyük veri setlerinin sıralanmasında
  • İşletim sistemlerinde
  • Veri tabanı sistemlerinde
  • Programlama dili kütüphanelerinde (Java'nın Arrays.sort, C++'ın std::sort gibi)
  • Sayısal analizde ve bilimsel hesaplamalarda
  • Veri madenciliği uygulamalarında

Kararlılık önemsiz olduğunda ve hız kritik olduğunda tercih edilir. Özellikle bilgisayarın belleklerinde rastgele erişim kolaylığı sağladığı için tercih edilmektedir.